#1 导入依赖
from bs4 import BeautifulSoup
import requests

#2 发送请求，得到响应结果
html = requests.get('https://www.buildhr.com/so/kw%E5%9B%9B%E5%B7%9D.html')
print(html.status_code)
html.encoding='utf-8'
html_text = html.text

print(html_text)

#3 使用beautifulsoup 解析我们需要的岗位信息
#3.1 构建beautifulsoup 对象
soup= BeautifulSoup(html_text,'lxml')

#3.2筛选岗位信息
print(soup.select(".result_list_one_job_name > a"))#<class 'bs4.element.ResultSet'>
#
for i in soup.select(".result_list_one_job_name > a"):
    # print(type(i))#<class 'bs4.element.Tag'>
    # print(i.text)#<class 'bs4.element.Tag'>
    print(i.text.strip())#<class 'bs4.element.Tag'>


    # 把岗位信息插入到数据库中
    import pymysql

    # 打开数据库连接
    db = pymysql.connect(host='localhost',
                         user='root',
                         password='123456',
                         database='test_db',
                         port=3306
                         )

    # 使用cursor()方法获取操作游标
    cursor = db.cursor()

    # SQL 插入语句
    sql = """INSERT INTO job(jobname) VALUES ('%s')""" %(i.text.strip())
    try:
        # 执行sql语句
        cursor.execute(sql)
        # 提交到数据库执行
        db.commit()
    except:
        # 如果发生错误则回滚
        db.rollback()

    # 关闭数据库连接
    db.close()

